home *** CD-ROM | disk | FTP | other *** search
/ Collection of Tools & Utilities / Collection of Tools and Utilities.iso / system / stpfcb12.zip / STOPFCBS.DOC < prev    next >
Text File  |  1991-05-27  |  8KB  |  147 lines

  1. STOPFCBS is Copyright 1991 by Alex Boge.
  2.  
  3. Version 1.00  May 9, 1991
  4. Version 1.01  May 10, 1991  Changes:  Compiled with /G2 to run on 286 or
  5.  higher, added more functions, removed help and deinstall, and now reports
  6.  which functions was stopped.
  7. Version 1.10  May 23, 1991.  OPS!  Since I developed and tested STOPFCBS under
  8.  4DOS instead of COMMAND.COM I didn't "know" that COMMAND.COM uses FCB
  9.  functions 13H & 17H.  Had to remove these from the intercept list. Drats!
  10. Version 1.20  May 27, 1991.  STOPFCBS now uses the multiplex interrupt 2Fh
  11.  to detect that it has been installed preventing multiple installs.  Also,
  12.  since this interrupt is used by SHARE itself, STOPFCBS will prevent SHARE
  13.  from installing (returning a "SHARE is already installed." message).
  14.  
  15. USE THIS PROGRAM COMPLETELY AT YOUR OWN RISK.  IT WORKS ON MY EQUIPMENT BUT
  16. I DO *NOT* WARRANT THAT IT WILL WORK ON YOURS.  I AM NOT LIABLE FOR ANY HARM
  17. THAT MAY BE CAUSED BY THE USE OF THIS PROGRAM.
  18.  
  19. Whew!  Got that outta the way.  Basically, I've tested this program on my
  20. own equipment and found it to work just fine but if it should nuke your FAT
  21. tables; don't say I didn't warn you.  STOPFCBS doesn't REPLACE SHARE, but
  22. it can be used in place of SHARE.
  23.  
  24. QUICKY START:
  25. =============
  26.  
  27. Alright, real quick now.  STOPFCBS stops two FCB functions that could lead
  28. to harm on a >32Mb disk partition.  To install STOPFCBS you have two easy
  29. ways to do this.  You can simply type STOPFCBS at any command line and it
  30. will load (you can, of course, add this command to your AUTOEXEC.BAT file).
  31. Also, and a thanks to Mike Turner for letting me know this, you can use the
  32. INSTALL= line in your CONFIG.SYS file (if you're already installing SHARE
  33. this way, just replace the SHARE.EXE with STOPFCBS.EXE).  This is not only
  34. easier, it will also suppress the "WARNING! SHARE blah blah" message you
  35. get if by the end of the CONFIG.SYS file DOS doesn't find multiplex 10H
  36. installed.
  37.  
  38.  
  39.  
  40. STOPFCBS is the result of being frustrated with a silly problem I gained after
  41. upgrading my system from DOS 3.3 to 4.01 and using BIGDOS (>32 Mb) partitions.
  42. I was being told I needed to load SHARE.EXE.  I questioned "why?  I'm not on
  43. a network and don't need file sharing."  The guru's I could find said I needed
  44. SHARE not for the file locking but so that some programs that still used FCB
  45. oriented functions wouldn't trash my big drive.
  46.  
  47. I thought...hey, I don't have any of those old programs around...but, heck,
  48. I'm on a 386, I'll just load SHARE high and forget about it...safe, that's me!
  49.  
  50. Well...come to find out, SHARE brought me one little headache.  Seems that
  51. the DSZ program that I use for YModem-g downloads with write access locked.
  52. Why should this bother me?  Let me tell you how I do my downloads...
  53.  
  54. I run Desqview.  I download in one window and continue to work in others.
  55. Sometimes I can't wait for all the files I've got in batch download to finish
  56. so I pop over to my download directory and unZIP some of the ones that made
  57. it already.  So..I unZIP file #1 while #2 is still downloading.  No problem.
  58.  
  59. I also use 4DOS, for my DOS windows under Desqview (and as my primary too).
  60. So...after I'm done looking at the unZIPped #1 file I want to kill all the
  61. files that came outta it but leave the .ZIPs alone, ESPECIALLY the one that
  62. is still downloading!  Sooooo, I just do a quick EXCEPT (*.ZIP) DEL *.*
  63. Zam...done.  Except now, "SHARE VIOLATION" - great!  The EXCEPT command
  64. can't change the attribute on the .ZIP being downloaded cause SHARE (and DSZ)
  65. say "Nope...it's write protected!"
  66.  
  67. I know, I know, I can unzip to a different directory...and all that but, well,
  68. I just don't WANT to.  Besides, time to try out some new programming tools.
  69. Just got the new beta of P.D.Q., let's see if it works.
  70.  
  71.  
  72. O.K., what does STOPFCBS really do.  Simple.  It goes resident and watches
  73. all the INT 21H calls.  When it get's one that uses either function 0FH or
  74. 16H, it takes over and returns a FFH status code, which is a failure.  Also,
  75. the user is notified by a beep and a message (which can be "silenced").
  76.  
  77. See...SHARE does one good thing.  It handles FCB function calls so that if
  78. a BIGDOS partition is being accessed, the FCBs are modified to support this
  79. extra large addressing scheme.  Since I don't know how that is done and no
  80. one else does (or won't tell me).  I figured...heck, anything old enough to
  81. still use FCBs I don't want and can live without, I wrote STOPFCBS.
  82.  
  83. Much more interestingly...I *DID* find a program that used FCBs and I actually
  84. suffered data loss with it.  That program is the "Programmers Editor" from
  85. Word Perfect, it came with their Library package some time ago.  I ran this
  86. once when I didn't have SHARE loaded (as a test).  WHAM, overwrote part of
  87. my FAT table!  I instantly found a use for STOPFCBS.
  88.  
  89.  
  90. Sorry this is so long but I wanted you to know the story and understand
  91. why this program is.
  92.  
  93.  
  94. Installation:
  95. =============
  96. Type STOPFCBS at any command line.  Add /Q to this command if you don't want
  97. a message displayed when STOPFCBS does it's stuff.  Placing STOPFCBS in your
  98. AUTOEXEC.BAT file is an easy way to insure loading each time you boot.
  99.  
  100. Alternately, you can load STOPFCBS in your CONFIG.SYS file by using:
  101. INSTALL=STOPFCBS.EXE
  102. Add a path name if the program is not in C:\ and you can still append a "/Q".
  103. This method requries DOS 4 or higher and does suppress the "WARNING..."
  104. message you would normally receive if you were loading via the AUTOEXEC.BAT.
  105.  
  106.  
  107. Technical stuff:
  108. ================
  109. STOPFCBS will ONLY run on 286's or higher and DOS 3.1 or higher.  STOPFCBS
  110. occupies about 4.7 Kilobytes of memory and it can be loaded into high RAM.
  111.  
  112. This TSR will intercept INT 21H functions 0FH and 16H and return a FFH value
  113. in AL (which is the status code for failure).  Also, it will beep to let
  114. you know this was done.  Unless you quiet it with a /Q on the command line at
  115. load time, it will also display a one line message at the top of a text screen
  116. then pause 36 timer tics (about 2 seconds) before continuing.
  117.  
  118. STOPFCBS also hooks interrupt 2Fh.  It watches for AH=10H which is the multi-
  119. plex number for the resident portion of SHARE.  If the function in AL is 
  120. 0 or 80h then it returns the FFh (already installed) code in AL. This prevents
  121. multiple installs of STOPFCBS and also prevents SHARE from loading.
  122. NOTE: According to the technical reference manual for DOS, the function should
  123. be zero but testing proves that this is not true, SHARE was loading AL with
  124. 80h - to support this, both values are checked for.
  125.  
  126. No other INTs or functions are touched.
  127.  
  128. STOPFCBS was written in about 20 minutes using Microsoft BASIC Professional
  129. Development System version 7.10.  It was linked with Crescent Software's
  130. EXCELLENT P.D.Q. library version 2.18.  If you program in BASIC and don't
  131. have P.D.Q. then your programs are too big and too slow.  TSR capability
  132. is built in and very simple to implement.
  133.  
  134. The BASIC source code is included.  If you distribute it, please do not
  135. modify it (MY name is on it & I'm not taking blame for any errors not my own).
  136.  
  137.  
  138. My name is Alex Boge and you can reach me via CompuServe at 72470,402
  139. or via mail at 7384 Grandview Pt., Washington, MI 48094 or via phone at
  140. (313) 781-2124 (between noon and about 3 a.m. EST).  I'll be happy to
  141. talk about STOPFCBS or SHARE or your ideas for new programs.
  142.  
  143. Please feel free to distribute this program to anyone who needs it but don't
  144. charge for it (except for a nominal fee for a diskette if necessary).  I
  145. don't want cash, want a pat on the back.
  146.  
  147.